package cn.edu.cug.cs.gtl.apis.ui;


import cn.edu.cug.cs.gtl.apis.ui.datake.DatakeApp;
import cn.edu.cug.cs.gtl.apis.ui.imageuis.ImageUIApp;
import cn.edu.cug.cs.gtl.apis.ui.mapuis.Map2dUIApp;
import cn.edu.cug.cs.gtl.apis.ui.modeller.ModellerApp;
import cn.edu.cug.cs.gtl.apis.ui.seriesuis.SeriesUIApp;
import cn.edu.cug.cs.gtl.apis.ui.model3duis.Model3dUIApp;
import cn.edu.cug.cs.gtl.apis.ui.spacex.SpaceXApp;
import cn.edu.cug.cs.gtl.apis.ui.tableuis.TableUIApp;
import cn.edu.cug.cs.gtl.apis.ui.textuis.TextUIApp;
import org.pf4j.PluginManager;

public abstract class AbstractApplication {
    protected AbstractFrame mainWindow = null;


    protected PluginManager pluginManager = null;

    public AbstractFrame getMainFrame() {
        return mainWindow;
    }

    public PluginManager getPluginManager() {
        return this.pluginManager;
    }

    public void setPluginManager(PluginManager pluginManager) {
        this.pluginManager = pluginManager;
    }


    public ModellerApp asModellerApp() {
        return (ModellerApp) this;
    }
    public DatakeApp asDatakeApp() {
        return (DatakeApp) this;
    }
    public SpaceXApp asSpaceXApp() {
        return (SpaceXApp) this;
    }
}